package org.x.user.dto;

import lombok.Data;
import jakarta.validation.constraints.NotBlank;
import io.swagger.v3.oas.annotations.media.Schema;

/**
 * 权限管理DTO
 *
 * @author 夏包包
 * @date 2025-03-08 13:39:03
 */
@Data
public class PermDTO {

    /**
     * 权限ID
     */
    @NotBlank(groups = { UpdateGroup.class, DeleteGroup.class }, message = "权限ID不能为空")
    @Schema(description = "权限ID")
    private String permId;

    /**
     * 权限名称
     */
    @NotBlank(groups = { CreateGroup.class, UpdateGroup.class }, message = "权限名称不能为空")
    @Schema(description = "权限名称")
    private String permName;

    /**
     * 权限描述
     */
    @Schema(description = "权限描述")
    private String permDesc;

    /**
     * 权限类型
     */
    @Schema(description = "权限类型")
    private String permType;

    /**
     * 权限标识符
     */
    @Schema(description = "权限标识符")
    private String permCode;

    /**
     * 所属模块
     */
    @Schema(description = "所属模块")
    private String module;
}
